Dashboard Temp Share Shortlinks Frames API

HTMLify

Search In Rotated Sorted Array.cpp
Views: 1 | Author: cody
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
int search(vector<int>& arr, int n, int k)
{
    // Write your code here.
    // Return the position of K in ARR else return -1.
    int start = 0;
	int end = n-1;
	// int mid = start +(end - start) /2;

	while(start<=end){
        int mid = start +(end - start) /2;
		if(arr[mid] == k) return mid;

        // LEFT PART
        if(arr[start] <= arr[mid])
        {
           if(arr[start] <= k && k <= arr[mid]){
                end = mid - 1; 
            }
            else{
                start = mid + 1;
            }
        }
        else{
            if(arr[mid] <= k && k <= arr[end])
            {
                    start = mid + 1;
            }
            else{
                    end = mid - 1;
                }              
            
        }
		
	}
	return -1;
}